home *** CD-ROM | disk | FTP | other *** search
/ The Atari Compendium / The Atari Compendium (Toad Computers) (1994).iso / files / internet / other / mail / stmh1_2.lzh / STMH1_2.TXT < prev    next >
Encoding:
Text File  |  1995-01-14  |  17.2 KB  |  400 lines

  1. STMH v1.2b
  2. Beta release 14/1/95
  3. Development by Stephen K Mulrine <robotron@moroder.demon.co.uk>
  4. Additions by Graeme Mullin <grm@inedible.demon.co.uk>
  5. Bug reports and comments to stmh@moroder.demon.co.uk
  6.  
  7. Based (loosely) on the Rand MH Message Handling System.
  8.  
  9. Requirements
  10. ------------
  11. Any Atari ST, TT or Falcon
  12. Hard disk with at least .5MB free
  13. Demon NOS software
  14. Text editor (e.g. Gnome, as supplied with Demon's NOS package)
  15.  
  16. First-time Installation
  17. -----------------------
  18. 1. Print this file!  You won't be able to use STMH without a list of
  19.    commands.
  20. 2. Copy all the .ttp and .bat files into the same directory as the NOS
  21.    software.
  22. 3. Double-click on "demon.tos" and choose option F (at time of writing) for
  23.    "Command Shell".
  24. 4. Enter "stmhinst".  This will create a directory called "stmh", your first
  25.    message folder ("+outgoing"), and a configuration file called "stmh.rc"
  26.    using the settings from your "mailer.rc" file.  (You may then wish to
  27.    examine or edit this file, e.g. "gnome stmh\stmh.rc".)
  28. 5. Enter "inc" to extract messages from your mailbox.
  29.  
  30. Upgrading from v1.1
  31. -------------------
  32. 1. Copy all the .ttp and .bat files into the same directory as the NOS
  33.    software.
  34. 2. Double-click on "demon.tos" and choose option F (at time of writing) for
  35.    "Command Shell".
  36. 3. Edit your configuration file (e.g. "gnome stmh\stmh.rc") and change the
  37.    setting for the "news" variable from "mail2news@news.demon.co.uk" to
  38.    "mail2news@peernews.demon.co.uk".
  39.  
  40. Concepts
  41. --------
  42. STMH uses folders, within which messages are stored.  Folder names are
  43. prefixed by a "+".  Each message within a folder has a number.  Messages can
  44. be moved from folder to folder.  And, because folders are independent of one
  45. another, two messages in different folders can have the same number.
  46.  
  47. There are three "special" folders.  "+inbox" is normally used to hold new
  48. (incoming) messages, "+outgoing" holds all your replies until you send them,
  49. and "+sent" optionally holds a copy of all the messages you send.
  50.  
  51. When you forward or reply to a message, or compose a new one, you create a
  52. new message in the "+outgoing" folder.  You don't have to send it straight
  53. away - you can have several messages in "+outgoing" at a time, and only
  54. send a particular message when you've finished working on it.
  55.  
  56. Just as STMH breaks your mailbox up into separate messages, STMH itself is
  57. broken up into several different programs.  (Most other mailers consist of
  58. one program with all the necessary functions built in.)  The idea behind
  59. this is that you can intersperse mailer commands with other functions, e.g.
  60. edit a program, reply to somebody's mail, compile the program..
  61.  
  62. Programs
  63. --------
  64. stmhinst:      set up STMH according to existing "mailer" configuration
  65. stmh:          list STMH functions (basically shows this list)
  66. inc:           read messages from mailbox into folder
  67. scan:          give one-line summaries of messages in folder
  68. refile:        move a message from one folder to another
  69. rmm:           remove a message
  70. folders:       list existing folders
  71. show:          display a message
  72. next:          display next message
  73. prev:          display previous message
  74. comp:          compose a new message
  75. repl:          reply to a message
  76. forw:          forward a message
  77. pending:       give one-line summaries of messages waiting to be sent
  78. send:          send a message
  79. post:          post a message as a news article
  80. compact:       renumber messages in a folder, starting at 1
  81. whatnow:       simple front end used by comp, repl and forw
  82.  
  83. All the programs, with the exception of stmhinst and stmh, can be run with a
  84. "-help" flag for a full description of command-line arguments without
  85. actually performing that function - "rmm -help" is perfectly safe.
  86.  
  87. Related files
  88. -------------
  89. stmh.rc:       configuration file
  90. signatur:      signature file
  91. aliases:       list of aliases
  92.  
  93. If the STMH environment variable is undefined, STMH looks for all these
  94. files in the directory "$NOS_ROOT\stmh".
  95.  
  96. Environment variables
  97. ---------------------
  98. NOS_ROOT:      NOS base directory; also used by NOS and SNEWS
  99. STMH:          STMH base directory (default is $NOS_ROOT\stmh)
  100. STMHCFG:       configuration file (default is $STMH\stmh.rc)
  101. STMHMBX:       name of mailbox (default is based on user name)
  102. USERNAME:      user name (alternatively USER)
  103. FULLNAME:      full name (alternatively NAME)
  104. ORGANIZATION:  name of organisation (alternatively ORGANISATION)
  105. HOSTNAME:      host name (alternatively HOST)
  106. DOMAINNAME:    domain name (alternatively DOMAIN)
  107. TIMEZONE:      time zone (alternatively TZ).  Default is +0000
  108. EDITOR:        name of editor to use (default is "vi")
  109.  
  110. Configuration file settings (default values shown where appropriate)
  111. --------------------------------------------------------------------
  112. user:          user name
  113. mailbox:       name of mailbox (only needed if different from user name)
  114. name:          full name
  115. host:          host name
  116. domain:        domain name (not needed if host name includes .demon.co.uk)
  117. editor:        name of editor to use (if not set, default to "vi")
  118. org:           name of organisation (only used for news articles)
  119. timezone:      valid RFC-822 time zone (if not set, defaults to +0000)
  120. archive:       save a copy of sent messages in folder "+sent"? (y/N)
  121. us_date:       show "inc", "scan" and "pending" dates in US format? (y/N)
  122. backup:        keep a backup (.bkp) of all deleted/sent messages? (Y/n)
  123. update:        should "inc" make "+inbox" the current folder? (Y/n)
  124. news:          email address of mail-to-news gateway
  125. gateway:       mail gateway for all mail to be relayed through
  126. reply_quote:   quote character to use when replying [>]
  127. forward_quote: quote character to use when forwarding [>]
  128.  
  129. Note that where an environment variable and a configuration file setting
  130. have the same meaning, the environment variable will always take precedence.
  131.  
  132. Examples
  133. --------
  134. inc            reads mail into folder "+inbox"
  135. inc +new       reads mail into folder "+new"
  136. inc root       reads mail into folder "+inbox" from root's mailbox
  137.  
  138. scan           summarises messages in current folder
  139. scan +inbox    summarises messages in folder "+inbox", also makes "+inbox"
  140.                  the current folder
  141.  
  142. refile +jim    moves the current message into folder "+jim"
  143. refile 4 +jim  moves message 4 in the current folder into folder "+jim"
  144. refile +a +b   moves the current message from folder "+a" into folder "+b"
  145.  
  146. rmm            removes the current message
  147. rmm 5          removes message 5 in the current folder
  148. rmm 5 +jim     removes message 5 in folder "+jim"
  149.  
  150. folders        lists existing folders - current folder denoted by "*"
  151.  
  152. show           display current message
  153. show 6         display message 6 in the current folder (and set current
  154.                  message to be 6)
  155. show 6 +jim    display message 6 in folder "+jim"
  156. show -full     display current message with full headers
  157. show -file f1  save current message to file "f1"
  158.  
  159. next           display message after current message (and set current
  160.                  message to be this one)
  161. next +jim      display next message in folder "+jim"
  162.  
  163. prev           display message before current message (and set current
  164.                  message to be this one)
  165. prev +jim      display previous message in folder "+jim"
  166.  
  167. comp           compose a new message
  168. comp 7         edit message 7 in folder "+outgoing"
  169. comp -file x1  compose a new message, incorporating file "x1"
  170.  
  171. repl           reply to current message
  172. repl 8         reply to message 8 in current folder
  173. repl 8 +jim    reply to message 8 in folder "+jim"
  174. repl -full     reply to current message, quoting original headers
  175.  
  176. forw           forward current message
  177. forw 9         forward message 9 in current folder
  178. forw 9 +jim    forward message 9 in folder "+jim"
  179. forw -full     forward current message, quoting original headers
  180.  
  181. pending        summarise messages in "+outgoing" folder
  182. pending -sent  summarise messages in "+sent" folder (if "archive" is set in
  183.                  configuration file)
  184.  
  185. send           move current message from "+outgoing" folder to outgoing mail
  186.                  queue
  187. send -archive  as above, but save a copy in folder "+sent" (also happens if
  188.                  "archive" is set in configuration file)
  189. send 10        move message 10 from "+outgoing" folder to outgoing mail
  190.                  queue
  191.  
  192. post           move current message from "+outgoing" folder to outgoing mail
  193.                  queue, to be sent to mail-to-news gateway
  194. post -archive  as above, but save a copy in folder "+sent" (also happens if
  195.                  "archive" is set in configuration file)
  196. post 11        move message 10 from "+outgoing" folder to outgoing mail
  197.                  queue, to be sent to mail-to-news gateway
  198.  
  199. whatnow        prompt for what to do with current message in "+outgoing"
  200.                  folder
  201. whatnow 12     prompt for what to do with message 12 in "+outgoing" folder
  202.  
  203. compact        renumber messages in current folder, starting at 1
  204.  
  205. Signature File
  206. --------------
  207. A file called "signatur" in the STMH base directory is appended to every
  208. message being composed, replied-to or forwarded.
  209.  
  210. Alias File
  211. ----------
  212. If it exists, a file called "aliases" in the STMH base directory is
  213. consulted every time a message is sent.  If the recipient's name is listed
  214. in the alias file, it will be replaced by the corresponding address.
  215.  
  216. An example "aliases":
  217. bill1    Bill Gates <billg@microsoft.com>
  218. bill2    Bill Clinton <president@whitehouse.gov>
  219.  
  220. Any (non-zero) amount of white space between the alias and its translation
  221. will suffice.  Note that aliases are not recursively expanded.
  222.  
  223. Composing A Message
  224. -------------------
  225. To create a message to send to somebody, enter "comp".  This will put you
  226. into your chosen editor with a blank message template to work on (and your
  227. "signatur" file appended, if you have one).  The message template consists
  228. of the lines "To: " and "Subject: ", followed by a blank line.  Fill in
  229. the recipient's address and the subject line, and then enter your message,
  230. making sure to leave the blank line intact.  (A blank line is what separates
  231. the header - subject, recipient, etc. - from your message.)
  232.  
  233. If you wish to post your message as a news article, change the "To: " line
  234. to "Newsgroups: " and add the appropriate newsgroup name(s), comma-separated
  235. if there are more than one.  (Note that this is not a terribly elegant way
  236. of posting news - on the whole, you'd be better off using SNEWS.)
  237.  
  238. Important Notes
  239. ---------------
  240. You can't use STMH in conjunction with any other mailer as it deletes your
  241. mailbox when you "inc" messages from it, although you can certainly run
  242. "inc" on a mailbox you have read messages in using Mailer.
  243.  
  244. If you "quit" instead of sending a message you've been composing, the draft
  245. will be left in "+outgoing".  (You can check this out with "pending".)
  246.  
  247. Make sure your ST has a proper date set before you "send" a message (it
  248. gets date-stamped at that point).
  249.  
  250. Advanced users can quite safely drag the whole "stmh" directory structure
  251. and programs out of the NOS directory if they wish, as long as they set an
  252. STMH environment variable to point to the new base directory and put the
  253. programs somewhere in their PATH.  The STMH variable takes precedence over
  254. NOS_ROOT for this very reason.
  255.  
  256. As provided, "backup" is set so that any messages deleted (by using "inc",
  257. "post", "refile", "rmm" or "send") will be given the extension ".bak" in
  258. case of disaster.
  259.  
  260. If STMH seems to get a bit slower with time, this is probably caused by
  261. large gaps in your folders (for example, if "+jim" contains two messages
  262. numbered 1 and 100, "scan +jim" will take a while to run).  Use "compact" to
  263. renumber the messages.
  264.  
  265. If you delete message 4 in folder "+jim" by mistake, go into the directory
  266. stmh\jim and rename "4.bak" to "4".  If this was the last message, you'll
  267. also need to edit the "context" file and change the number beside "last="
  268. to 4.  You may also need to do this if you manually copy messages into a
  269. folder.
  270.  
  271. Don't try to run "inc" on files which aren't proper mailboxes (i.e. don't
  272. have "From [whoever]" as their first line) as it will skip everything until
  273. it finds the start of a valid message.
  274.  
  275. After post'ing or send'ing a message, a copy will be stored in the "+sent"
  276. folder.  Turn this off by changing "archive=yes" to "archive=no" in the
  277. configuration file.
  278.  
  279. Remember to use "rmm +sent" or "rmm +outgoing" to get rid of messages in
  280. those folders.  "rmm" on its own will delete the current message in the
  281. current folder.  "+sent" and "+outgoing" should never be the current
  282. folder ("pending" is provided instead of "scan +outgoing", because "scan"
  283. picks up on the "From:" address which will be yourself for every message
  284. in "+sent" and "+outgoing").
  285.  
  286. You can't do "repl 1 -noedit -exit", followed by "comp 1", and expect to be
  287. editing the message you just created a pending reply to, because the message
  288. won't necessarily have the same number in the "+outgoing" folder.  I keep
  289. finding myself about to do this.  (A future version of STMH will allow you
  290. to "comp cur" to edit the current message in "+outgoing".)
  291.  
  292. When replying to a message, the "Reply-To:" address of that message takes
  293. precedence over the "From:" address, in accordance with RFC-822.
  294.  
  295. If you don't set a "gateway" in the configuration file for all your non-
  296. local email to be relayed through, it will be sent directly to the
  297. appropriate host.  Setting a gateway is equivalent to having "smtp wait 0"
  298. in your "startup.nos" file.  The installation procedure sets up Demon's
  299. "post" machine as your gateway - this is my own preference.
  300.  
  301. If the TIMEZONE environment variable appears to be in Unix format, e.g.
  302. "GMT-1BST", a legitimate RFC-822 timezone will be extracted from it.  If
  303. this fails, the configuration file setting will be used instead (or, if
  304. there is none, the default value).
  305.  
  306. If you find text goes all over the screen (i.e. all the programs display
  307. linefeeds without carriage returns), take the letter 'b' out of your
  308. UNIXMODE environment variable.
  309.  
  310. If anything goes terribly, terribly wrong and you can't access your mail at
  311. all, I should be able to help if you post to the demon.ip.support.atari
  312. newsgroup.
  313.  
  314. Normal Usage
  315. ------------
  316. inc
  317. show
  318. rmm
  319. next
  320. repl (followed by "send")
  321. refile +joe
  322.  
  323. Advanced Usage
  324. --------------
  325. inc
  326. show -file b:\joe\94-07-25.joe
  327. repl -noedit -exit
  328. rmm
  329. next
  330. repl -noedit -exit
  331. rmm
  332. pending
  333. comp 1 (followed by "quit")
  334. [..time passes..]
  335. comp 1 (followed by "send")
  336.  
  337. Bugs
  338. ----
  339. Folder names can only have eight letters.  Take it up with Atari.
  340.  
  341. Bad things may happen if there are more than 1024 messages in a folder.
  342. Particularly, if you delete message 1023 then it may "lose" messages
  343. 1024 upwards.  Or maybe the numbers are 1024 and 1025 respectively - I
  344. haven't had the patience to test this.  Edit the "context" file to fix this
  345. if it happens, and don't have so many messages in the same folder in future.
  346. (Of course, the operating system will have choked on the number of files in
  347. one directory long ago, so you can safely ignore this bit.)
  348.  
  349. "pending" shows the time a message in "+outgoing" was last edited, and not
  350. the time it was created (which would make more sense).
  351.  
  352. The support for alternative mailbox formats hasn't been tested properly
  353. and isn't relevant to use in a Demon context, so I haven't documented it.
  354.  
  355. "whatnow" exits even if "send" or "post" returns an error.
  356.  
  357. For "show", "next" and "prev", flags ">" and ">>" have been provided as
  358. synonyms for "-noapp -file" and "-file" respectively, for shells which don't
  359. support redirection properly.  However, ">>" seems to work with Gulam but
  360. not Tomshell, for reasons yet to be established.
  361.  
  362. Header fields aren't validated yet (hence the need to leave a blank line
  363. between header and message).
  364.  
  365. "folders" doesn't work under MiNT/tcsh, and "pending" shows a date of
  366. "00/00".
  367.  
  368. Hacks
  369. -----
  370. A separate file is used for each message (with default extension ".stt")
  371. giving its status ("scan" displays "-" for "already viewed", "+" for
  372. "replied-to").  This is for speed.  I don't fancy reading a message header
  373. in, writing it out, writing out "Status: R" or whatever, and then writing
  374. out the whole message.
  375.  
  376. Improvements since v1.0
  377. -----------------------
  378. Changes have been made to allow easy integration with the Demon software.
  379. Address parsing has been significantly improved.
  380. "refile" now allows you to specify two folders.
  381. Specifying multiple messages now produces an error (previously, "show 4 5"
  382. would display message 5).
  383.  
  384. Improvements since v1.1
  385. -----------------------
  386. Signature file is now appended correctly.
  387. Messages now display correctly under MiNT/tcsh.
  388. Unix-style TIMEZONE environment variables are now converted.
  389.  
  390. Future developments
  391. -------------------
  392. Add multiple recipients.
  393. Add Cc: and Bcc:.
  394. Maybe re-implement forms (present in v1.0, dropped in v1.1).
  395. Take care of all RFC-822 header fields.
  396. See if I can do anything about the "pending" and MiNT/tcsh bugs.
  397. Implement ranges (e.g. "refile 1-4 +jim", "rmm all").
  398. Add more MH functions (now that I have the manual pages courtesy of Graeme).
  399. Possibly consider some function for undeleting rmm'ed messages ("unrmm"?).
  400.